home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / pcboard / genmail.zip / GENMAIL.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1996-12-01  |  2KB  |  179 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.3O (Encryption type II) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Date     DATE001
  23.     Integer  INTEGER001
  24.     Integer  INTEGER002
  25.     Integer  INTEGER003
  26.     Integer  INTEGER004
  27.     String   STRING001
  28.     String   STRING002
  29.     String   STRING003
  30.     String   STRING004
  31.     String   STRING005
  32.     String   STRING006
  33.     String   STRING007
  34.     String   STRING008
  35.     String   STRING009
  36.     String   STRING010
  37.     String   STRING011
  38.     String   STRING012
  39.  
  40. ;------------------------------------------------------------------------------
  41.  
  42.     Goto LABEL004
  43.     End
  44.     STRING001 = ReplaceStr(STRING001, "#NAME#", U_Name())
  45.     STRING001 = ReplaceStr(STRING001, "#CITY#", U_City)
  46.     STRING002 = STRING001
  47.  
  48.     EndFunc
  49.  
  50.     BOOLEAN001 = 0
  51.     STRING004 = ""
  52.     :LABEL001
  53.     If (BOOLEAN001) Goto LABEL003
  54.     FGet 0, STRING004
  55.     If (Ferr(0)) Then
  56.         BOOLEAN001 = 1
  57.     Else
  58.         If ((Trim(STRING004, " ") == "") || (Left(STRING004, 1) == ";")) Goto LABEL002
  59.         Goto LABEL003
  60.         :LABEL002
  61.         Goto LABEL001
  62.     Endif
  63.     :LABEL003
  64.     If (BOOLEAN001 == 1) STRING004 = ""
  65.     STRING003 = STRING004
  66.  
  67.     EndFunc
  68.  
  69.     INTEGER002 = 400
  70.     STRING006 = ""
  71.     STRING007 = ReadLine(PCBDat(), 29)
  72.     INTEGER001 = FNext()
  73.     FOpen INTEGER001, STRING007, 2, 0
  74.     FSeek INTEGER001, INTEGER002 * 0, 0
  75.     FRead INTEGER001, STRING006, 25
  76.     FClose INTEGER001
  77.     STRING005 = Trim(STRING006, " ")
  78.  
  79.     EndFunc
  80.  
  81.     :LABEL004
  82.     For INTEGER003 = 1 To 10
  83.         ConfFlag INTEGER003, 16
  84.     Next
  85.     INTEGER004 = CurConf()
  86.     STRING008 = ""
  87.     STRING011 = "R"
  88.     DATE001 = Date() + 3
  89.     BOOLEAN002 = 0
  90.     BOOLEAN003 = 0
  91.     STRING012 = PPEPath() + PPEName() + ".MSG"
  92.     If (Exist(PPEPath() + PPEName() + ".DAT")) Then
  93.         STRING009 = ReadLine(PPEPath() + PPEName() + ".DAT", 1)
  94.         STRING010 = ReadLine(PPEPath() + PPEName() + ".DAT", 2)
  95.     Else
  96.         SPrintLn PPEName() + ".DAT not found.ERROR"
  97.         Log 0, PPEName() + ".DAT not found ERROR"
  98.         Stop
  99.     Endif
  100.     Message INTEGER004, STRING008, STRING009, STRING010, STRING011, DATE001, BOOLEAN002, BOOLEAN003, STRING012
  101.     End
  102.  
  103. ;------------------------------------------------------------------------------
  104. ;
  105. ; Usage report (before postprocessing)
  106. ;
  107. ; ■ Statements used :
  108. ;
  109. ;    2       End
  110. ;    11      Goto 
  111. ;    24      Let 
  112. ;    6       If 
  113. ;    1       ConfFlag 
  114. ;    1       FOpen 
  115. ;    1       FClose 
  116. ;    1       FGet 
  117. ;    1       Log 
  118. ;    1       Stop
  119. ;    1       Message 
  120. ;    1       SPrintLn 
  121. ;    1       FSeek 
  122. ;    1       FRead 
  123. ;    3       EndFunc
  124. ;
  125. ;
  126. ; ■ Functions used :
  127. ;
  128. ;    1       *
  129. ;    12      +
  130. ;    3       ==
  131. ;    1       <
  132. ;    1       <=
  133. ;    2       >=
  134. ;    4       !
  135. ;    2       &&
  136. ;    2       ||
  137. ;    1       Left()
  138. ;    1       Ferr()
  139. ;    2       Trim()
  140. ;    1       Date()
  141. ;    1       U_Name()
  142. ;    1       CurConf()
  143. ;    1       PCBDat()
  144. ;    4       PPEPath()
  145. ;    3       ReadLine()
  146. ;    1       Exist()
  147. ;    6       PPEName()
  148. ;    2       ReplaceStr()
  149. ;    1       FNext()
  150. ;
  151. ;------------------------------------------------------------------------------
  152. ;
  153. ; Analysis flags : Fd
  154. ;
  155. ; F - Change conference flags status ■ 2
  156. ;     This may be normal for a SELECT replacement but it may also be
  157. ;     a way to get access to conferences a user is not allowed to.
  158. ;     ■ Search for : CONFFLAG, CONFUNFLAG
  159. ;
  160. ; d - Access PCBOARD.DAT ■ 2
  161. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  162. ;     for many PPE so they can find various informations on the system
  163. ;     (system paths, max number of lines in messages, ...) but it may also
  164. ;     be a way to gather vital informations.
  165. ;     ■ Search for : PCBDAT()
  166. ;
  167. ;------------------------------------------------------------------------------
  168. ;
  169. ; Postprocessing report
  170. ;
  171. ;    1       For/Next
  172. ;    0       While/EndWhile
  173. ;    2       If/Then or If/Then/Else
  174. ;    0       Select Case
  175. ;
  176. ;------------------------------------------------------------------------------
  177. ;                 AEGiS Corp - Break the routines, code against the machines!
  178. ;------------------------------------------------------------------------------
  179.